home *** CD-ROM | disk | FTP | other *** search
/ The Arsenal Files 8 / The Arsenal Files Collection #8 (Arsenal Computer) (1996).ISO / prg_gen / cobfd.zip / COBFD.DOC < prev    next >
Text File  |  1996-12-01  |  7KB  |  153 lines

  1.  
  2.                    Tal Systems' COBOL FD Analyzer - COBFD
  3.                           Version 1.21 December 1996
  4.                       by Michael Mattias dba Tal Systems
  5.  
  6.    COBFD is a tool for COBOL programmers. Very simply, what it does is parse
  7.    a COBOL source file (either a copylib or complete source), identifies all
  8.    group and  elementary data items, then breaks down all '01' and subordinate
  9.    group items into their components and produces a report file showing the
  10.    size in bytes and the offset within the '01' record of every subordinate
  11.    data item. All group and elementary data items are included. The user has
  12.    an option to include the input file in the report output (follows analysis).
  13.  
  14.    COBFD supports all levels of REDEFINES and OCCURS: REDEFINES which OCCUR,
  15.    OCCURS which OCCUR while REDEFINE'ing an item which OCCURS; OCCUR'ing
  16.    group items with mixed data types. These are typically the greatest
  17.    challenges to counting bytes "by hand".
  18.  
  19.    COBFD runs on MS-DOS and compatible PC's and requires DOS 2.0 or higher.
  20.    It will run in a DOS session under Windows(r); but has not been tested
  21.    on Windows 95 or Windows NT. It is a single user program; there is no
  22.    provision for sharing files, but the program has been run on a network.
  23.  
  24.    The program creates and deletes an internal workfile, COBFD@@.WRK, in
  25.    the  user's current directory.
  26.  
  27.    Both the input and output files are user-specified at run time. The output
  28.    file is 80 bytes per record, formatted, with page headers (all text).
  29.    The user must provide a file viewer/printer for screen or printed output.
  30.  
  31.    COBFD is not intended as a general-user-community product. It is provided
  32.    for COBOL programmers who have a need for detailed offset information about
  33.    datanames. Typical uses include writing reports in SyncSort, checking data
  34.    during conversions and adding new REDEFINES datanames into existing software.
  35.  
  36.    It is also intended as advertising for the author.
  37.  
  38.    To use the COBFD program:
  39.  
  40.       COBFD <Enter>
  41.  
  42.    You will be given a screen with boxes for input file and output file.
  43.    (The mouse is not enabled on this screen).
  44.  
  45.    For the input file, the user may simply type the name of the input file.
  46.    Drive and/or path may be included in the filename. Pressing ALT+D will
  47.    bring up a pickbox of files; while in the pickbox, the user may "navigate"
  48.    directories by pressing <Enter> or clicking the mouse on a highlighted
  49.    directory entry.  The user's "current" directory is unaffected.
  50.  
  51.    The user must type the name of the output file; drive and/or path are optional.
  52.  
  53.    Processing is initiated by pressing F10. Progress messages are displayed
  54.    (but they generally go by so quickly that they are of little use).
  55.  
  56.    After a source file is processed, the user will be asked if he wants to
  57.    do another file; if yes, the input and output files must be reentered.
  58.  
  59.    The output file is always opened "new" and will erase any previous file
  60.    with that name. The presence of an existing file with the same name as
  61.    the user output file is NOT CHECKED.
  62.  
  63.    
  64.    What Tal Systems' COBFD COBOL FD Analyzer assumes:
  65.  
  66.    A valid COBOL FD. If PICTURE clauses are missing or illegal, sentences are
  67.    not terminated with a period, or levels are inconsistent, the program
  68.    will return unreliable data, generally without a warning.
  69.  
  70.    If column seven (7) of the input file is non-blank, the line is a comment.
  71.  
  72.    All PICTURE, OCCURS, REDEFINES, USAGE DISPLAY|COMP|SIGN SEPARATE and other
  73.    COBOL keywords appear in columns 13-72 . These clauses may, however, span
  74.    multiple physical lines with comment lines interspersed. The order in which
  75.    keywords appear is immaterial. A COBOL sentence is not terminated until
  76.    a non-quoted period is found.
  77.  
  78.    The QUOTE character is the first double-quote (") or apostrophe (') found
  79.    in a non-comment input record. The QUOTE character is redefined for each
  80.    file processed during a program run; i.e., the user can process multiple
  81.    files, some using quote and others using apostrophe as the literal delimiter.
  82.  
  83.    A REDEFINES clause below the '01' level assumes that the area being
  84.    redefined is the same size as the redefined area. (Not an ANSI COBOL
  85.    requirement). If this is not true, the program will appear to finish
  86.    normally, but the data may be erroneous. REDEFINES is ignored at the
  87.    '01' dataname level.
  88.  
  89.    When parsing the input file, if the first two words in a non-comment line
  90.    are PROCEDURE and DIVISION, the program stops looking for data; however,
  91.    if printing the input file, it prints the entire file.
  92.  
  93.    RENAMES ('66-level') clauses are not supported
  94.  
  95.    SYNC clauses are not supported.
  96.  
  97.    PICTURE clauses containing "P" (scaled numeric) are not supported.
  98.  
  99.    POINTER and PROCEDURE POINTER data items are not supported
  100.  
  101.    USAGE BINARY is considered USAGE COMPUTATIONAL.
  102.  
  103.    Only EJECT, SKIP1, SKIP2, COPY and ++INCLUDE are recognized as
  104.    compiler directives (treated as comments). Other directives may
  105.    cause the program to insert an extra SYSTEM-GENERATED-01-DATANAME
  106.    in the output following the directive. The offset information should
  107.    not be affected unless the unsupported directive is contained within
  108.    the physical boundaries of an explicit or implicit '01' dataname.
  109.  
  110.    No form of COPY is supported; but copylibs themselves may be analyzed.
  111.  
  112.    If an '01' record is not found as the first COBOL data item, the system
  113.    creates one with the name SYSTEM-GENERATED-01-DATANAME. This allows the
  114.    program to be used with copylibs not containing an '01 -level' dataname.
  115.    
  116.    A FEW EXTRA NOTES:
  117.  
  118.    The mouse is enabled in the file pickoff box, but not in the input screen.
  119.  
  120.    The file COBELEM.COB is included. This is an FD containing most of the possible
  121.    elementary numeric data types. In as much as the author does not have
  122.    access to all types of operating systems and/or COBOL compilers, he provided
  123.    this so that the user can see what the size of elementary items are. Should
  124.    some system(s) require additional numeric data types, notify the author
  125.    and they will be considered for a future release.
  126.  
  127.    COBFD is a copyright product. It may be freely used and distributed without
  128.    payment or registration. However, it may not be distributed for monetary
  129.    consideration, either standalone or "bundled" with other utilities,
  130.    applications or instructional material without the permission of the
  131.    copyright owner.
  132.  
  133.    Distribution to individual programmers is encouraged.
  134.  
  135.    Copyright Michael C. Mattias dba Tal Systems, Sturtevant WI USA.
  136.  
  137.    v 1.0  August 1996.
  138.    v 1.1  September 1996.
  139.    v 1.2  November 1996 (released).
  140.    v 1.21 December 1996 Fixed bug: bad offset when dataname level drops
  141.           directly from, say, '07' to '03' and a dataname at an intervening
  142.           level (e.g.,'05') since the last '03' had an OCCURS clause.
  143.  
  144.    The author would appreciate any comments, remarks, bug reports, or
  145.    desired enhancements be submitted to:
  146.  
  147.    Michael C. Mattias dba Tal Systems
  148.    2950 87th St.
  149.    Sturtevant, WI 53177-2044 USA
  150.    414-884-9748
  151.    Compuserve ID 72030,3563
  152.    Internet 72030.3563@compuserve.com
  153.